Ensure that display is set during drag-and-drop, and that string lists'
memory is zeroed after allocation to prevent g_strfreev() from
over-running.
}
if (list)
- *list = g_new (gchar *, n_strings + 1);
+ *list = g_new0 (gchar *, n_strings + 1);
- (*list)[n_strings] = NULL;
-
i = n_strings;
tmp_list = strings;
while (tmp_list)
selection_data.data = NULL;
selection_data.length = -1;
selection_data.target = _gtk_quartz_pasteboard_type_to_atom (type);
+ selection_data.display = gdk_display_get_default ();
if (gtk_target_list_find (info->target_list,
selection_data.target,
selection_data = g_slice_new0 (GtkSelectionData);
selection_data->selection = selection;
selection_data->target = target;
-
+ if (!selection_data->display)
+ selection_data->display = gdk_display_get_default ();
if (target == gdk_atom_intern_static_string ("UTF8_STRING"))
{
NSString *s = [pasteboard stringForType:NSStringPboardType];